# encoding: utf-8
# @author: wangxin
# @software: garner
# @file: submitOrderViews.py
# @time: 2025/2/16 16:04

import json

from django.core import serializers
from django.db.models import Q
from django.http import HttpResponse, JsonResponse
from django.views import View
import  pymysql
from app.models import TMember, TOrder


class submitOrder(View):
    def post(self,request):
        #获取请求体
        # 获取请求体并将其从字节流解码为UTF-8字符串
        dataFrom = request.body.decode('utf-8')
        # 将解码后的字符串转换为JSON对象，以便于后续处理
        dataFrom_json = json.loads(dataFrom)
        member=dataFrom_json['member']
        order=dataFrom_json['order']
        dbMember=TMember.objects.filter(name=member['name'])
        #print(type(dbMember))

        """
        在Django中，当你想要检查一个QuerySet是否为空时，不应该直接检查它是否等于null或None，
        因为QuerySet对象本身永远不会为None（除非你在某些异常情况下没有正确获取它）。
        相反，你应该检查QuerySet的count()方法返回的值是否为零，或者使用exists()方法，
        该方法返回一个布尔值，指示QuerySet是否包含至少一个对象。
        """
        #查询是否存在
        if  dbMember.count()==0:
            #插入数据
            TMember.objects.create(
                name=member['name'],
                sex=member['sex'],
                birthday=member['birthday'],
                phoneNumber=member['phoneNumber'],
                idCard=member['idCard'],

           )
            #获取id
            member_id=TMember.objects.filter(name=member['name']).values('member_id')[0]['member_id']
            TOrder.objects.create(
                member_id=member_id,
                orderdate=order['orderDate'],
                orderstatus='未到',
                ordertype='微信预约',
                setmeal_id=order['setmeal_id'],
            )


        return HttpResponse("ok")